package org.example.cloud.controller;

import jakarta.annotation.Resource;
import lombok.extern.slf4j.Slf4j;
import org.example.cloud.service.Common;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

/**
 * @author 宋孟林
 * @description
 * @date: 2025/4/10 22:25
 */
@RestController
@Slf4j
public class FlowLimitController {
    @Resource
    private Common common;

    @GetMapping("/testA")
    public String testA(){
        return "testA method!";
    }
    @GetMapping("/testB")
    public String testB(){
        return "testB method!";
    }

    @GetMapping("/testC")
    public String testC(){
        common.common();
        return "testC method!";
    }
    @GetMapping("/testD")
    public String testD(){
        common.common();
        return "testD method!";
    }

    /**
     * 新增熔断规则-异常比例
     * 如果这个异常被全局异常处理捕获了，那么方法直接跳到全局异常处理的逻辑。所以返回给前端的数据是正常的。
     * sentinel不认为发生了异常
     * @return 异常比例
     */
    @GetMapping("/testG")
    public String testG() {
        System.out.println("----测试:新增熔断规则-异常比例 ");
        int age = 10/0;
        return "------testG,新增熔断规则-异常比例 ";
    }



}
